package com.jctrip.hotel.source.model.greentree.resp;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @Author：Haruhi
 * @description:
 * @Date：2023/9/1 09:44
 * @Package：com.jctrip.hotel.source.model.greentree.resp
 * @Project：hotel-main
 */

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@JacksonXmlRootElement(localName = "GetBreakfastInfo")
public class GetBreakfastInfoResp extends GreenTreeBaseResp{

    @JacksonXmlProperty(localName = "HotelCode")
    private String hotelCode;
    @JacksonXmlElementWrapper(useWrapping = false)
    @JacksonXmlProperty(localName = "ReqDate")
    private List<ReqDate> reqDates;

    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    @Builder
    public static class ReqDate {
        @JacksonXmlProperty(localName = "data",isAttribute = true)
        private String data;

        @JacksonXmlElementWrapper(useWrapping = false)
        @JacksonXmlProperty(localName = "ReqRoom")
        private List<ReqRoom> reqRooms;

        @Data
        @NoArgsConstructor
        @AllArgsConstructor
        @Builder
        public static class ReqRoom {
            /**
             * 房型编号
             */
            @ApiModelProperty(value = "房型编号")
            @JacksonXmlProperty(localName = "roomTypeCode",isAttribute = true)
            private String roomTypeCode;

            /**
             *  0 无早， 1 单早 ， 2 双早
             */
            @ApiModelProperty(value = "0 无早， 1 单早 ， 2 双早")
            @JacksonXmlProperty(localName = "BreakfastState")
            private Integer breakfastState;
        }
    }
}
